home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1985 December / 1985-12.d64 / banners 1526 (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  2KB  |  55 lines

  1. 90 print"[147]":open6,4,6:print#6,chr$(27):close6
  2. 100 poke56,48:poke55,0:clr:cu=53272:gosub520:sys828:poke53281,15:mt$=""
  3. 110 print"[147][144]             banner printer             [146]"
  4. 120 cc=0:print"press a key:":print"u[146]_for upper case and graphics"
  5. 130 print"l[146]_for upper/lower case"
  6. 140 print"c[146]_for custom character set (character   data must be at 12288!)"
  7. 150 getch$:ifch$=""then150
  8. 160 ifch$="u"thench=16384:printchr$(142):goto200
  9. 170 ifch$="l"thench=16384+2048:printchr$(14):goto200
  10. 180 ifch$="c"thenfork=12544to12551:pokek,0:next:ch=12288:gosub510:goto200
  11. 190 goto150
  12. 200 print"[147]what character do you want to make up   the large letters"
  13. 210 gosub610:pp$=mt$
  14. 220 mt$="":print"[147]what is your message  ":gosub610:n$=mt$
  15. 230 print"how tall (1 to 9)";:inputts:ifts<1thents=1
  16. 240 print"how wide (1 to"ts"[157])";:inputws:ifws>tsorws<1thenws=ts
  17. 250 open1,4
  18. 260 forl=1tolen(n$)
  19. 270 a$=mid$(n$,l,1):print"printing[146] "a$:ifa$=" "thengosub480:goto380
  20. 280 q=asc(a$):q=q+(q>63)*64+(q>191)*64+(q=255)*33
  21. 290 i=ch+q*8
  22. 300 forj=7to0step-1
  23. 310 fork=7to0step-1
  24. 320 b=peek(i+k)
  25. 330 ifband2^jthenfort=1tots:pr$=pr$+pp$:nextt:goto350
  26. 340 fort=1tots:pr$=pr$+" ":nextt
  27. 350 nextk
  28. 360 forx=1tows:print#1,chr$(15)spc((72-ts*8)/2)pr$chr$(32):nextx:pr$=""
  29. 370 nextj
  30. 380 nextl
  31. 390 print#1,chr$(32):close1
  32. 400 if(peek(cu)and12)=12thenpokecu,(peek(cu)and240)or4:cc=1
  33. 410 print"[147]press a key:":print"x to exit program":print"r to reprint message"
  34. 420 print"n to enter new message"
  35. 430 gety$:ify$=""then430
  36. 440 ify$="r"thengosub490:print"[147]"n$:goto250
  37. 450 ify$="x"thenopen1,4:print#1,chr$(15):close1:print"[147]":end
  38. 460 ify$="n"then110
  39. 470 goto430
  40. 480 forx=1to8*ws:print#1,chr$(8):next:return
  41. 490 ifcc=1thencc=0:gosub510
  42. 500 return
  43. 510 pokecu,(peek(cu)and240)or12:return
  44. 520 fori=828to887:reada:x=x+a:pokei,a:nexti
  45. 530 ifx<>8638thenprint"error in data statements.":stop
  46. 540 return
  47. 550 data 173,14,220,41,254,141,14,220,169,208
  48. 560 data 133,252,169,64,133,254,165,1,41,251
  49. 570 data 133,1,169,0,133,251,133,253,168,162
  50. 580 data 16,177,251,145,253,200,208,249,230
  51. 590 data 252,230,254,202,208,242,165,1,9,4
  52. 600 data 133,1,173,14,220,9,1,141,14,220,96
  53. 610 poke198,5:poke631,155:poke632,34:poke633,34:poke634,20:poke635,144
  54. 620 inputmt$:return
  55.